package com.hnx.admin.aurora.web.exception.base;

import com.hnx.admin.aurora.utils.MessageUtil;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import org.springframework.util.StringUtils;

/*
创建人： 倔强的头发
创建时间：2025/6/14
功能描述:

*/
@Getter
@NoArgsConstructor
@AllArgsConstructor
public class BaseException extends RuntimeException{
    public BaseException(String code){
        this(code,null);
    }
    public BaseException(String code,Object[] args){
        this(code,args,null);
    }
    /**
     * 错误码
     */
    private String code;
    /**
     * 错误码对应的参数
     */

    private Object[] args;
    /**
     * 错误消息
     */
    private String defaultMessage;

    @Override
    public String getMessage()
    {
        String message = defaultMessage;
        if (StringUtils.hasText(code))
        {
            message = MessageUtil.message(code, args);
        }
        return message;
    }
}
